FROM golang:1.20 AS builder

WORKDIR /app
COPY . .

# 设置 GOPROXY 并构建
RUN go env -w GOPROXY=https://goproxy.cn,direct && \
    go mod tidy && \
    CGO_ENABLED=0 GOOS=linux go build -o /shortUrl-app ./main.go

FROM alpine:latest

# 创建相同的目录结构
WORKDIR /app/shortUrl

# 复制可执行文件
COPY --from=builder /shortUrl-app .

# 复制配置文件到相同相对路径
COPY config.yaml ./config.yaml

# 复制其他必要文件（如静态文件、模板等）
# COPY templates ./templates

EXPOSE 8080
CMD ["./shortUrl-app"]
